package com.sp.scmdb.service;

import java.util.List;

import com.sp.scmdb.bean.CheckBoxEntityBean;
import com.sp.scmdb.bean.MenuEntityBean;
import com.sp.scmdb.bean.RoleBean;
import com.sp.scmdb.bean.UserBean;
import com.sp.scmdb.entity.Role;

public interface RoleService {
	
	/**
	 * 查询所有的角色列表
	 * @return 角色列表
	 */
	public List<RoleBean> findAll();
		
	/**
	 * 查询所有的菜单列表
	 * @param user 当前用户
	 * @return 菜单列表
	 */
	public List<MenuEntityBean> queryMenu(UserBean user);
	
	/**
	 * 查询所有部门列表
	 * @return 部门列表
	 */
	public List<CheckBoxEntityBean> queryDepartment(UserBean user);
	
	/**
	 * 添加角色
	 * @param bean
	 * @return 添加成功/失败标识
	 */
	public String newRole(RoleBean bean, UserBean user);
	
	/**
	 * 根绝角色ID获取角色信息
	 * @param id
	 * @param user 当前用户
	 * @return 角色
	 */
	public RoleBean findRoleById(Integer id, UserBean user);
	
	/**
	 * 更新角色
	 * @param bean
	 * @return 更新成功/失败标识
	 */
	public String editRole(RoleBean bean, UserBean user);
	
	/**
	 * 删除角色
	 * @param ids
	 * @return 删除成功/失败标识
	 */
	public String delRole(String ids, UserBean user);
	
	/**
	 * 根据ID获取角色Entity
	 */
	public Role getById(Integer id);
}
